Skip to main content
  1. posts/

Setup arr stack

·2 mins

The stack #

  • radarr - Movie collection manager
  • sonarr - TV shows manager
  • bazarr - Subtitles manager
  • qbittorrent - BitTorrent client
  • prowlarr - Indexer manager
  • plex - Media server
  • overseerr - Request management and media discovery
  • tailscale - Remote server management

Install Prerequisites #

Linux distro #

Install any linux distro you’re comfortable with. Ubuntu Server is a good choice.

Docker and compose #

Follow the steps here to install docker and docker compose.

Run containers #

Docker compose #

Create a docker-compose.yml file with the following contents.

version: "3.7"

services:
  radarr:
    container_name: radarr
    image: cr.hotio.dev/hotio/radarr:latest
    restart: unless-stopped
    logging:
      driver: json-file
    ports:
      - 7878:7878
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Kolkata
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - ./docker/appdata/radarr:/config
      - ./data:/data

  sonarr:
    container_name: sonarr
    image: cr.hotio.dev/hotio/sonarr:latest
    restart: unless-stopped
    logging:
      driver: json-file
    ports:
      - 8989:8989
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Kolkata
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - ./docker/appdata/sonarr:/config
      - ./data:/data
      
  bazarr:
    container_name: bazarr
    image: cr.hotio.dev/hotio/bazarr:latest
    restart: unless-stopped
    logging:
      driver: json-file
    ports:
      - 6767:6767
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Kolkata
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - ./docker/appdata/bazarr:/config
      - ./data/media:/data/media

  qbittorrent:
    container_name: qbittorrent
    image: cr.hotio.dev/hotio/qbittorrent
    restart: unless-stopped
    logging:
      driver: json-file
    ports:
      - 8080:8080
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Kolkata
    volumes:
      - ./docker/appdata/qbittorrent:/config
      - ./data/torrents:/data/torrents

  prowlarr:
    container_name: prowlarr
    image: cr.hotio.dev/hotio/prowlarr
    restart: unless-stopped
    logging:
      driver: json-file
    ports:
      - 9696:9696
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Kolkata
    volumes:
      - ./docker/appdata/prowlarr:/config

  plex:
    container_name: plex
    image: cr.hotio.dev/hotio/plex
    network_mode: host
    restart: unless-stopped
    logging:
      driver: json-file
    ports:
      - 32400:32400
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Kolkata
      - PLEX_CLAIM
      - ADVERTISE_IP
      - ALLOWED_NETWORKS
      - PLEX_PASS=no
    volumes:
      - ./docker/appdata/plex:/config
      - ./data/media:/data/media

  overseerr:
    container_name: overseerr
    image: cr.hotio.dev/hotio/overseerr
    restart: unless-stopped
    logging:
      driver: json-file
    ports:
      - 5055:5055
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Kolkata
    volumes:
      - ./docker/appdata/overseerr:/config

  tailscale:
    hostname: tailscale
    cap_add:
      - NET_ADMIN
      - NET_RAW
    container_name: tailscale
    environment:
      TS_AUTHKEY: ${TS_KEY}
      TS_STATE_DIR: /var/lib
    image: tailscale/tailscale
    network_mode: host
    volumes:
      - ./docker/appdata/tailscale:/var/lib
      - /dev/net/tun:/dev/net/tun
    restart: unless-stopped

Run the following command to spin up the containers

docker compose up -d

At this point, all containers should be up and running but we have still not configured them.

Directory structure #

It might be useful to know the directory structure that is being used.

.
|-- data
|   |-- media
|   |   |-- movies       <-- your movies
|   |   `-- tv           <-- your tv shows
|   `-- torrents
`-- docker
    `-- appdata
        |-- bazarr
        |-- overseerr
        |-- plex
        |-- prowlarr
        |-- qbittorrent
        |-- radarr
        |-- sonarr
        `-- tailscale

Configure arrs #

Prowlarr #